﻿<Window x:Class="Quiz.FrageListe"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Frageliste zum Bearbeiten" MinHeight="600" MinWidth="950" Height="600" Width="950" >
    <Window.Resources>
    </Window.Resources>
    <Grid Style="{StaticResource GridStyle}">
        <StackPanel HorizontalAlignment="Stretch" Name="uxFrageListeSP" Style="{StaticResource StackPanelStyle}">
            <StackPanel HorizontalAlignment="Stretch" Name="uxTabelleSP" >
                <StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal" x:Name="uxSucheSP" Margin="0,0,0,10">
                    <Label x:Name="uxSucheTextLb" Content="Fragetext durchsuchen nach:" Style="{StaticResource BezeichnerLabel}" Width="auto" />
                    <TextBox x:Name="uxSucheTextTb" Width="300" KeyUp="uxSucheTextTb_KeyUp"  />
                </StackPanel>

                <ListBox x:Name="uxListBox" ItemsSource="{Binding Path=Fragen}" SelectionMode="Single" Background="Transparent" SelectionChanged="uxListBox_SelectionChanged" Height="200" HorizontalAlignment="Stretch">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                                    <StackPanel Orientation="Horizontal">
                                        <Label Content="{Binding Path=FrageID}"></Label>
                                        <Label Content="{Binding Path=Fragetext}"></Label>
                                    </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>
            </StackPanel>
            
            <!-- Stackpanel in dem die aktuelle ausgewählte Frage bearbeitet werden kann, wird nur angezeigt wenn der Wert nicht Null ist. -->
            <StackPanel  Orientation="Vertical" Name="uxBearbeitenSP" Style="{StaticResource bearbeitenSP}" >
                <StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal" Name="uxFrageSP">
                    <Label x:Name="uxFrageTextLb" Content="Fragetext:" Style="{StaticResource BezeichnerLabel}" /><TextBox x:Name="uxFrageTextTb" Text="{Binding Path=Fragetext}" Width="500"  />
                </StackPanel>
                <StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal" Name="uxKategorieSP" VerticalAlignment="Top"  Margin="0,10,0,10" >
                    <Label x:Name="uxKategorieLb" Content="Kategorie:" Style="{StaticResource BezeichnerLabel}" />
                    <!-- Die Combobox muss mit dem DataContext des Fensters gefüllt werden und dann nur noch das Item ausgewählt werden was gerade ausgewählt wurde. -->
                    <ComboBox x:Name="uxKategorieKb" ItemsSource="{Binding Path=DataContext.Kategorien, RelativeSource={RelativeSource AncestorType=Window}}" DisplayMemberPath="KategorieBezeichnung" SelectedItem="{Binding Path=Kategorie}"  Width="300" />
                </StackPanel>
                <StackPanel HorizontalAlignment="Stretch" Orientation="Vertical" Name="uxAntwortenSP" VerticalAlignment="Top" >
                    <!-- DataTemplate zum Anzeigen/Bearbeiten der Antworten für die jeweilige Frage -->
                    <ItemsControl ItemsSource="{Binding Path=Antworten}" Background="Transparent" BorderBrush="Transparent" BorderThickness="0">
                        <ItemsControl.ItemTemplate>
                            <DataTemplate>
                                <StackPanel Orientation="Horizontal" Margin="0,10,0,0">
                                    <Label Content="Antwort:" Style="{StaticResource BezeichnerLabel}"></Label>
                                    <TextBox Text="{Binding Path=Antworttext}" Width="300"></TextBox>
                                    <RadioButton GroupName="AntwortStatus" VerticalAlignment="Center" Margin="10,0,0,0" IsChecked="{Binding Path=Richtig}"></RadioButton>
                                </StackPanel>
                            </DataTemplate>
                        </ItemsControl.ItemTemplate>
                    </ItemsControl>
                </StackPanel>
                <StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal">
                    <Label Content="Ersteller:" Style="{StaticResource BezeichnerLabel}" />
                    <Label Content="{Binding Path=Ersteller.ErstellerFullname}"/>
                </StackPanel>
                <StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal">
                    <Label Content="Angelegt am:" Style="{StaticResource BezeichnerLabel}" />
                    <!-- Bei einem Label den FormatString setzten, bei einer Textbox gibt es im Binding über StringFormat die Möglichket. -->
                    <Label Content="{Binding Path=ADatum}" ContentStringFormat="{}{0:dddd} den, {0:dd.MM.yyyy HH:mm}" />
                </StackPanel>
            </StackPanel>
        </StackPanel>
        <StackPanel Style="{StaticResource ButtonStackPanel}" VerticalAlignment="Bottom" Margin="0,0,0,10">
            <Button Content="Alle Fragen löschen" x:Name="uxAlleLoeschenBtn" Click="uxAlleLoeschenBtn_Click" Style="{StaticResource ButtonBefehle}" />
            <Button Content="Neue Kategorie Hinzufügen" x:Name="uxKategorieHinzufuegenBtn" Click="uxKategorieHinzufuegenBtn_Click" Style="{StaticResource ButtonBefehle}" />
            <Button Content="Neue Frage Hinzufügen" x:Name="uxHinzufuegenBtn" Click="uxHinzufuegenBtn_Click" Style="{StaticResource ButtonBefehle}" />
            <Button Content="aktuelle Frage löschen" x:Name="uxLoeschenBtn" Click="uxLoeschenBtn_Click" Style="{StaticResource ButtonBefehle}" />
            <Button Content="Speichern" x:Name="uxSpeichernBtn" Click="uxSpeichern_Click" Style="{StaticResource ButtonBefehle}" />
            <Button Content="Abbrechen" x:Name="uxAbbrechenBtn" Click="uxAbbrechenBtn_Click" Style="{StaticResource ButtonBefehle}" />
        </StackPanel>

    </Grid>

</Window>
